From 389b87604b1bb006624d960fe68ac9bec5555483 Mon Sep 17 00:00:00 2001 From: robertlipe Date: Wed, 1 Jan 2014 00:23:23 +0000 Subject: [PATCH] Fixes many csv leaks + tpo. --- gpsbabel/csv_util.cc | 18 +++++++++--------- gpsbabel/tpo.cc | 6 ++---- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/gpsbabel/csv_util.cc b/gpsbabel/csv_util.cc index 52a470885..c21f7c5bd 100644 --- a/gpsbabel/csv_util.cc +++ b/gpsbabel/csv_util.cc @@ -1033,13 +1033,13 @@ xcsv_parse_val(const char* s, waypoint* wpt, const field_map_t* fmp, /* IGNORE -- Calculated Sequence # For Ouput*/ break; case XT_SHORTNAME: - wpt->shortname = csv_stringtrim(s, enclosure, 0); + wpt->shortname = csv_stringtrim(s, enclosure); break; case XT_DESCRIPTION: - wpt->description = csv_stringtrim(s, enclosure, 0); + wpt->description = csv_stringtrim(s, enclosure); break; case XT_NOTES: - wpt->notes = csv_stringtrim(s, "", 0); + wpt->notes = csv_stringtrim(s, ""); break; case XT_URL: if (!link_) { @@ -1270,9 +1270,9 @@ xcsv_parse_val(const char* s, waypoint* wpt, const field_map_t* fmp, break; case XT_GEOCACHE_ISAVAILABLE: gc_data = waypt_alloc_gc_data(wpt); - if (case_ignore_strcmp(csv_stringtrim(s, "", 0), "False") == 0) { + if (case_ignore_strcmp(csv_stringtrim(s, ""), "False") == 0) { gc_data->is_available = status_false; - } else if (case_ignore_strcmp(csv_stringtrim(s, "", 0), "True") == 0) { + } else if (case_ignore_strcmp(csv_stringtrim(s, ""), "True") == 0) { gc_data->is_available = status_true; } else { gc_data->is_available = status_unknown; @@ -1280,9 +1280,9 @@ xcsv_parse_val(const char* s, waypoint* wpt, const field_map_t* fmp, break; case XT_GEOCACHE_ISARCHIVED: gc_data = waypt_alloc_gc_data(wpt); - if (case_ignore_strcmp(csv_stringtrim(s, "", 0), "False") == 0) { + if (case_ignore_strcmp(csv_stringtrim(s, ""), "False") == 0) { gc_data->is_archived = status_false; - } else if (case_ignore_strcmp(csv_stringtrim(s, "", 0), "True") == 0) { + } else if (case_ignore_strcmp(csv_stringtrim(s, ""), "True") == 0) { gc_data->is_archived = status_true; } else { gc_data->is_archived = status_unknown; @@ -1319,7 +1319,7 @@ xcsv_parse_val(const char* s, waypoint* wpt, const field_map_t* fmp, /* Tracks and routes *********************************************/ case XT_ROUTE_NAME: if (csv_route) { - csv_route->rte_name = csv_stringtrim(s, enclosure, 0); + csv_route->rte_name = csv_stringtrim(s, enclosure); } break; case XT_TRACK_NEW: @@ -1334,7 +1334,7 @@ xcsv_parse_val(const char* s, waypoint* wpt, const field_map_t* fmp, if (!csv_track) { csv_track = route_head_alloc(); } - csv_track->rte_name = csv_stringtrim(s, enclosure, 0); + csv_track->rte_name = csv_stringtrim(s, enclosure); break; /* OTHER STUFF ***************************************************/ diff --git a/gpsbabel/tpo.cc b/gpsbabel/tpo.cc index 87bf6ecd7..36ef3657a 100644 --- a/gpsbabel/tpo.cc +++ b/gpsbabel/tpo.cc @@ -975,7 +975,6 @@ void tpo_process_map_notes(void) int lat; int lon; unsigned int name_length; - char* waypoint_name; waypoint* waypoint_temp; unsigned int num_bytes; unsigned int jj; @@ -991,9 +990,7 @@ void tpo_process_map_notes(void) waypoint_temp = tpo_convert_ll(lat, lon); // Assign a generic waypoint name - xasprintf(&waypoint_name, "NOTE %d", ii+1); -//printf("Waypoint Name: %s\t\t", waypoint_name); - waypoint_temp->shortname = waypoint_name; + waypoint_temp->shortname = QString().sprintf("NOTE %d", ii+1); //UNKNOWN DATA LENGTH (void)tpo_read_int(); @@ -1015,6 +1012,7 @@ void tpo_process_map_notes(void) gbfread(comment, 1, name_length, tpo_file_in); comment[name_length] = '\0'; // Terminator waypoint_temp->description = comment; + xfree(comment); //printf("Comment: %s\n", comment); } else { // waypoint_temp->description = NULL; -- 2.30.2